/*
	author: TangQiao , Wind @ Beijing Normal University

	problem name: Goldbach's Conjecture
	
	source :  BNU Online Judge
	
	problem type: 数学题
	
	problem description: 验证哥德巴赫猜想. 
	
	problem solution: 建一个质数表,不过最好用筛选法,而不要用一般的试除法.不然时间会不够.
	
		
	date : 2005.7.16 北师大个人练习赛
	
*/
#include <stdio.h>
#include <string.h>
#include <math.h>
#define MAX 1000000

int zhi[1000001];
int shu[1000000];
int ns;
int nz;
int site;

int iszhi(int a)
{
	int i;

	for (i=3;i<=(int)sqrt(a);i+=2)
		if (a%i==0) return 0;
	return 1;
}

void countzhi()
{
	int i;
	nz=0;
	
	for (i=3;i<1000000;i+=2)
		if (iszhi(i))
			zhi[++nz]=i;
	printf("%d",nz);
	printf(" %d", zhi[nz]);

}

int find()
{
	
	for (;site<MAX;site+=2)
		if (zhi[site]==0)
		{			
			shu[++ns]=site;
			return site;
		}
	return 0;
		
}

void init()
{
	int i,k;
	memset(zhi,0,sizeof(zhi));
	zhi[1]=-1;
	zhi[2]=-1;
	for (i=2;i<MAX;i+=2) 
		zhi[i]=-1;

	site=3;
	ns=0;
	while (k=find())
	{
		zhi[k]=1;
		for (i=k+k;i<MAX;i+=k)
			zhi[i]=-1;
	}


	
}


main()
{
	int n,i,j;
	int ta;
	init();
	while (1)
	{
		scanf("%d", &n);
		if (n==0) break;
		j=0;
		while (1)
		{
			ta=shu[++j];
			if (ta>=n) break;
			if (zhi[n-ta]==1)
			{
				printf("%d = %d + %d\n",n,ta,n-ta);
				break;
			}
		}
	}


	return 0;
}